package com.wz.project.bas.basProductDetail.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.wz.framework.aspectj.lang.annotation.Excel;
import com.wz.framework.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 物品明细对象 bas_product_detail
 * 
 * @author wz
 * @date 2021-11-17
 */
public class BasProductDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private String id;

    /** 物品明细 */
    @Excel(name = "物品明细")
    private String productDetailId;

    /** 二维码 */
    @Excel(name = "二维码")
    private String barcode;

    /** 订单日期 */
    @Excel(name = "订单日期")
    private String orderDate;

    /** 产线 */
    @Excel(name = "产线")
    private String lineId;

    /** 车间 */
    @Excel(name = "车间")
    private String workshopId;

    /** 层数 */
    @Excel(name = "层数")
    private String layerNow;

    /** 托盘条码 */
    @Excel(name = "托盘条码")
    private String trayCode;

    /** 数量 */
    @Excel(name = "数量")
    private BigDecimal quantity;

    /** 物品状态 */
    @Excel(name = "物品状态")
    private String produtFlag;

    /** 仓库 */
    @Excel(name = "仓库")
    private String warehouseId;

    /** 现在层数 */
    @Excel(name = "现在层数")
    private String layerNowNumber;

    /** 入库子单 */
    @Excel(name = "入库子单")
    private String stockinDetailId;

    /** 物品guid */
    @Excel(name = "物品guid")
    private String productGuid;

    /**  */
    @Excel(name = "")
    private String idUsed;

    /** 是否盘点 */
    @Excel(name = "是否盘点")
    private String barcodeCheck;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 出库子单 */
    @Excel(name = "出库子单")
    private String stockoutDetailId;

    /** 出库单guid */
    @Excel(name = "出库单guid")
    private String stockoutGuid;

    /** 二维码状态 */
    @Excel(name = "二维码状态")
    private String barcodeStatus;

    /** 物品id */
    @Excel(name = "物品id")
    private String productId;

    /** 物品名称 */
    @Excel(name = "物品名称")
    private String productName;

    /** 重量 */
    @Excel(name = "重量")
    private BigDecimal weight;

    /** 生产日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date printDate;

    private String fromWarehouse;
    private String labelStatus;
    private String labelType;
    private String lotNo;

    public String getFromWarehouse() {
        return fromWarehouse;
    }

    public void setFromWarehouse(String fromWarehouse) {
        this.fromWarehouse = fromWarehouse;
    }

    public String getLabelStatus() {
        return labelStatus;
    }

    public void setLabelStatus(String labelStatus) {
        this.labelStatus = labelStatus;
    }

    public String getLabelType() {
        return labelType;
    }

    public void setLabelType(String labelType) {
        this.labelType = labelType;
    }

    public String getLotNo() {
        return lotNo;
    }

    public void setLotNo(String lotNo) {
        this.lotNo = lotNo;
    }

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId()
    {
        return id;
    }
    public void setProductDetailId(String productDetailId)
    {
        this.productDetailId = productDetailId;
    }

    public String getProductDetailId()
    {
        return productDetailId;
    }
    public void setBarcode(String barcode)
    {
        this.barcode = barcode;
    }

    public String getBarcode()
    {
        return barcode;
    }
    public void setOrderDate(String orderDate)
    {
        this.orderDate = orderDate;
    }

    public String getOrderDate()
    {
        return orderDate;
    }
    public void setLineId(String lineId)
    {
        this.lineId = lineId;
    }

    public String getLineId()
    {
        return lineId;
    }
    public void setWorkshopId(String workshopId)
    {
        this.workshopId = workshopId;
    }

    public String getWorkshopId()
    {
        return workshopId;
    }
    public void setLayerNow(String layerNow)
    {
        this.layerNow = layerNow;
    }

    public String getLayerNow()
    {
        return layerNow;
    }
    public void setTrayCode(String trayCode)
    {
        this.trayCode = trayCode;
    }

    public String getTrayCode()
    {
        return trayCode;
    }
    public void setQuantity(BigDecimal quantity)
    {
        this.quantity = quantity;
    }

    public BigDecimal getQuantity()
    {
        return quantity;
    }
    public void setProdutFlag(String produtFlag)
    {
        this.produtFlag = produtFlag;
    }

    public String getProdutFlag()
    {
        return produtFlag;
    }
    public void setWarehouseId(String warehouseId)
    {
        this.warehouseId = warehouseId;
    }

    public String getWarehouseId()
    {
        return warehouseId;
    }
    public void setLayerNowNumber(String layerNowNumber)
    {
        this.layerNowNumber = layerNowNumber;
    }

    public String getLayerNowNumber()
    {
        return layerNowNumber;
    }
    public void setStockinDetailId(String stockinDetailId)
    {
        this.stockinDetailId = stockinDetailId;
    }

    public String getStockinDetailId()
    {
        return stockinDetailId;
    }
    public void setProductGuid(String productGuid)
    {
        this.productGuid = productGuid;
    }

    public String getProductGuid()
    {
        return productGuid;
    }
    public void setIdUsed(String idUsed)
    {
        this.idUsed = idUsed;
    }

    public String getIdUsed()
    {
        return idUsed;
    }
    public void setBarcodeCheck(String barcodeCheck)
    {
        this.barcodeCheck = barcodeCheck;
    }

    public String getBarcodeCheck()
    {
        return barcodeCheck;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }
    public void setStockoutDetailId(String stockoutDetailId)
    {
        this.stockoutDetailId = stockoutDetailId;
    }

    public String getStockoutDetailId()
    {
        return stockoutDetailId;
    }
    public void setStockoutGuid(String stockoutGuid)
    {
        this.stockoutGuid = stockoutGuid;
    }

    public String getStockoutGuid()
    {
        return stockoutGuid;
    }
    public void setBarcodeStatus(String barcodeStatus)
    {
        this.barcodeStatus = barcodeStatus;
    }

    public String getBarcodeStatus()
    {
        return barcodeStatus;
    }
    public void setProductId(String productId)
    {
        this.productId = productId;
    }

    public String getProductId()
    {
        return productId;
    }
    public void setProductName(String productName)
    {
        this.productName = productName;
    }

    public String getProductName()
    {
        return productName;
    }
    public void setWeight(BigDecimal weight)
    {
        this.weight = weight;
    }

    public BigDecimal getWeight()
    {
        return weight;
    }
    public void setPrintDate(Date printDate)
    {
        this.printDate = printDate;
    }

    public Date getPrintDate()
    {
        return printDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("productDetailId", getProductDetailId())
            .append("barcode", getBarcode())
            .append("orderDate", getOrderDate())
            .append("lineId", getLineId())
            .append("workshopId", getWorkshopId())
            .append("layerNow", getLayerNow())
            .append("trayCode", getTrayCode())
            .append("quantity", getQuantity())
            .append("produtFlag", getProdutFlag())
            .append("warehouseId", getWarehouseId())
            .append("layerNowNumber", getLayerNowNumber())
            .append("stockinDetailId", getStockinDetailId())
            .append("productGuid", getProductGuid())
            .append("idUsed", getIdUsed())
            .append("barcodeCheck", getBarcodeCheck())
            .append("status", getStatus())
            .append("stockoutDetailId", getStockoutDetailId())
            .append("stockoutGuid", getStockoutGuid())
            .append("barcodeStatus", getBarcodeStatus())
            .append("productId", getProductId())
            .append("productName", getProductName())
            .append("weight", getWeight())
            .append("printDate", getPrintDate())
            .toString();
    }
}
